package com.neusoft.neuiotms.dcom.dto.hn;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.neusoft.bizcore.web.dto.AbstractAuditDTO;
import com.neusoft.neuiotms.dcom.model.enums.HnInspectionTaskItemStatus;
import com.neusoft.neuiotms.dcom.model.enums.HnInspectionTaskStatus;

import lombok.Getter;
import lombok.Setter;

@Setter
@Getter
public class HnInspectionHealthTaskDTO extends AbstractAuditDTO {
    private static final long serialVersionUID = -8686764876759080008L;

    private String code;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date startDateTime;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date endDateTime;

    /** 实际结束时间 **/
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date actualDateTime;

    /** 厅局编码 **/
    private String institutionCode;

    /** 厅局名称 **/
    private String institutionName;

    /** 执行人编码 **/
    private String userCode;

    /** 执行人名称 **/
    private String userName;

    /** 存在问题 **/
    private String problem;

    /** 解决方法 **/
    private String solution;

    /** 巡检任务状态 **/
    private HnInspectionTaskStatus status;

    /** 巡检结果状态 **/
    private HnInspectionTaskItemStatus itemStatus = HnInspectionTaskItemStatus.uninspected;

    private List<HnInspectionHealthTaskItemValueDTO> itemValues = new ArrayList<>();

    private List<HnInspectionHealthTaskAttachmentDTO> attachment = new ArrayList<>();

}
